﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel;
using System.Runtime.Serialization;
using System.Data.Objects.DataClasses;
using System.Xml.Serialization;

namespace FinalProject.DAL.Model
{
    /// <summary>
    /// No Metadata Documentation available.
    /// </summary>
    [EdmEntityTypeAttribute(NamespaceName = "InvoiceModel", Name = "CustomerBalance")]
    [Serializable()]
    [DataContractAttribute(IsReference = true)]
    public partial class CustomerBalance
    {
        #region Factory Method

        /// <summary>
        /// Create a new CustomerBalance object.
        /// </summary>
        /// <param name="customerId">Initial value of the CustomerId property.</param>
        /// <param name="customerCode">Initial value of the CustomerCode property.</param>
        public static CustomerBalance CreateCustomerBalance(global::System.Guid customerId, global::System.String customerCode)
        {
            CustomerBalance customerBalance = new CustomerBalance();
            customerBalance.CustomerId = customerId;
            customerBalance.CustomerCode = customerCode;
            return customerBalance;
        }

        #endregion

        #region Primitive Properties

        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty = true, IsNullable = false)]
        [DataMemberAttribute()]
        public global::System.Guid CustomerId
        {
            get
            {
                return _CustomerId;
            }
            set
            {
                if (_CustomerId != value)
                {
                    _CustomerId = value;
                }
            }
        }
        private global::System.Guid _CustomerId;

        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty = true, IsNullable = false)]
        [DataMemberAttribute()]
        public global::System.String CustomerCode
        {
            get
            {
                return _CustomerCode;
            }
            set
            {
                if (_CustomerCode != value)
                {
                    //OnCustomerCodeChanging(value);
                    _CustomerCode = value;
                }
            }
        }
        private global::System.String _CustomerCode;

        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty = false, IsNullable = true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Decimal> TotalDebit
        {
            get
            {
                return _TotalDebit;
            }
            set
            {
                if (value != _TotalDebit)
                    _TotalDebit = value;
            }
        }
        private Nullable<global::System.Decimal> _TotalDebit;

        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty = false, IsNullable = true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Decimal> TotalCreadit
        {
            get
            {
                return _TotalCreadit;
            }
            set
            {
                _TotalCreadit = value;
            }
        }
        private Nullable<global::System.Decimal> _TotalCreadit;

        #endregion


    }
}
